#ifndef CICORE_GROUPLIB_H
#define CICORE_GROUPLIB_H

#include <vector>
#include <map>

#include "Group.h"

namespace CICore {
    class GroupLib {

    public:
        GroupLib();              //Constructor
        virtual ~GroupLib();     //Destructor

    protected: 
        std::map<const char*, Group*> groups;           //The groups of the library

    public:
        //Utility Methods
        bool Add (Group* m);                            //Method called to add a group in the library
        Group* Get (const char* groupName);             //Method called to get a group from the library
        void Remove (const char* groupName);            //Method called to remove a group from the library
    };
}

#endif /* CICORE_GROUPLIB_H */
